package es.tikitaka.domain;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

/**
 * 
 * @author Saúl Domínguez
 * @since 2010
 * @category PFC
 */

@Entity
@Table(name = "ESTADISTICAS")
public class Estadisticas {

	private Integer id;
	private int partidosJ;
	private int partidosG;
	private int partidosP;
	private int partidosE;
	private int amarillas;
	private int rojas;
	private int azules;

	/**
	 * Constructor por defecto
	 */
	public Estadisticas() {
		// TODO Auto-generated constructor stub
	}

	/*
	 * getters and setters
	 */

	/**
	 * 
	 * @return id Id de la estadística
	 */
	@Id
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "EST_GEN")
	@SequenceGenerator(allocationSize = 1, name = "EST_GEN", sequenceName = "EST_SEQ")
	@Column(name = "X_EST", nullable = false, precision = 10, scale = 0)
	public Integer getId() {
		return id;
	}

	/**
	 * 
	 * @param id
	 */
	public void setId(Integer id) {
		this.id = id;
	}

	/**
	 * 
	 * @return partidosJ Número de partidos jugados
	 */
	@Column(name = "PJ")
	public int getPartidosJ() {
		return partidosJ;
	}

	/**
	 * 
	 * @param partidosJ
	 */
	public void setPartidosJ(int partidosJ) {
		this.partidosJ = partidosJ;
	}

	/**
	 * 
	 * @return partidosG Número de partidos ganados
	 */
	@Column(name = "PG")
	public int getPartidosG() {
		return partidosG;
	}

	/**
	 * 
	 * @param partidosG
	 */
	public void setPartidosG(int partidosG) {
		this.partidosG = partidosG;
	}

	/**
	 * 
	 * @return partidosP Número de partidos perdidos
	 */
	@Column(name = "PP")
	public int getPartidosP() {
		return partidosP;
	}

	/**
	 * 
	 * @param partidosP
	 */
	public void setPartidosP(int partidosP) {
		this.partidosP = partidosP;
	}

	/**
	 * 
	 * @return partidosE Número de partidos empatados
	 */
	@Column(name = "PE")
	public int getPartidosE() {
		return partidosE;
	}

	/**
	 * 
	 * @param partidosE
	 */
	public void setPartidosE(int partidosE) {
		this.partidosE = partidosE;
	}

	/**
	 * 
	 * @return tAmarillas Número de tarjetas amarillas
	 */
	@Column(name = "TA")
	public int getAmarillas() {
		return amarillas;
	}

	/**
	 * 
	 * @param amarillas
	 */
	public void setAmarillas(int amarillas) {
		this.amarillas = amarillas;
	}

	/**
	 * 
	 * @return tRojas Número de tarjetas rojas
	 */
	@Column(name = "TR")
	public int getRojas() {
		return rojas;
	}

	/**
	 * 
	 * @param rojas
	 */
	public void setRojas(int rojas) {
		this.rojas = rojas;
	}

	/**
	 * 
	 * @return
	 */
	@Column(name = "TAZ")
	public int getAzules() {
		return azules;
	}

	/**
	 * 
	 * @param azules
	 */
	public void setAzules(int azules) {
		this.azules = azules;
	}

	/**
	 * Método equals
	 */
	@Override
	public boolean equals(Object obj) {
		if (!(obj instanceof Estadisticas)) {
			return false;
		}
		if (obj != null) {
			if (this.id == ((Estadisticas) obj).getId()) {
				return true;
			}
		}
		return false;
	}

	/**
	 * Método hashCode
	 */
	@Override
	public int hashCode() {
		// TODO Auto-generated method stub
		return super.hashCode();
	}
}
